This invention is directed to a system and method for automatically, in real time, making recommendations for video content to be inserted to an online webpage, and more specifically, utilizing a shared memory system that implements publication/subscription messaging system to enable multiple workers of different types to operate both asymmetrically and simultaneously with each other to make a recommendation or inserting a video content into a text web page as a function of the recommendations.
It is known in the art, to provide text at a website. It is also known, to provide video content within the text. As known in the art the website sends a request to a server for video content to be inserted into the text. As many as 500 requests per second may be made. Each request is a search for a video or set of videos, that is relevant to the text being displayed to the user. The search must occur within the time that a user will stay on the page; sufficiently quickly before the user/viewer moves to another page.
Studies have shown that twenty percent of users will leave a web page if a page takes longer than one second to load. Therefore, it is desired that recommendations for video to be provided within the text occur within one second or less.
It is known in the art to utilize technologies to make recommendations of video content to be placed within the text of an online article. A system such as Celery®, which is a distributed tasque queue, has been configured to be capable of placing video content within a web based text content, but requires extensive preplanning of the various components that are attached to the system to enable the recommendation and placement to be made. Attaching each new component requires restarting of the entire process. In effect Celery® is tool upon which a recommendation system may be built, such a system as now known, suffers from the disadvantage that it requires time and advanced knowledge of the content of both the video and the text.
A second operating system is known in the art and supplied by Spark. Spark is a generic timing system that utilizes centralized clocks to keep all workers operating on the recommendation for selecting the video being synchronized. However, the system suffers from the disadvantage that no worker can start work until timed into operation by the clock. Furthermore, the system guarantees that all search operations will be operated upon by all workers of a certain type. Accordingly, when a subsystem goes down, the guarantee rule (that a video will be delivered in a timely manner) is unfulfilled breaking the time limit requirement required to adequately provide the video content. Other systems are known in the art such as that provided by Akka. However, these systems are language specific. As a result, they are incompatible with off the shelf components written in other languages and cannot be easily remedied when a problem arises in the operation.
Accordingly, an operating system and method for providing video content to be inserted into a text message within the required parameters for successful insertion, is desired.